Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BED-4611: Citrix CanRDP Post Processing #818

Merged
merged 16 commits into from
Sep 12, 2024
Merged

BED-4611: Citrix CanRDP Post Processing #818

merged 16 commits into from
Sep 12, 2024

Conversation

brandonshearin
Copy link
Contributor

@brandonshearin brandonshearin commented Aug 28, 2024

Description

  • A new parameter named "analysis.citrix_rdp_support" was added to the config table
  • the config value is plumbed through to the PostLocalGroups post processing handler
  • all of the CanRDP sauce is in FetchCanRDPEntityBitmapForComputer which has been extended to account for computers where Citrix is installed. it essentially makes an additional step of finding all entities that are members of the Direct Access Users group via direct or nested membership and intersects those entities with the entities that have CanRDP privileges through the old attack path (which was membership through the Remote Desktop Users Group)

Motivation and Context

This PR addresses: BED-4611

The exiting logic for creating post processed CanRDP edges did not take into account computers which have Citrix. This changeset introduces a config parameter for Citrix and extends the CanRDP edge creation logic with extra goodness when turned on.

How Has This Been Tested?

  • integration tests have been added. the harnesses are beautiful please go enjoy the svg's to get a sense of the different logic paths

Screenshots (optional):

Types of changes

  • Chore (a change that does not modify the application functionality)
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Database Migrations

Checklist:

  • I have met the contributing prerequisites
  • I have ensured that related documentation is up-to-date
    • Open API docs
    • Code comments (GoDocs / JSDocs)
  • I have followed proper test practices
    • Added/updated tests to cover my changes
    • All new and existing tests passed

Copy link
Contributor

@mistahj67 mistahj67 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Migration needs to be fixed, otherwise code looks good

cmd/api/src/database/migration/migrations/v5.16.0.sql Outdated Show resolved Hide resolved
@brandonshearin brandonshearin changed the title draft: BED-4611: Citrix CanRDP Post Processing BED-4611: Citrix CanRDP Post Processing Sep 9, 2024
Copy link
Contributor

@mistahj67 mistahj67 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removing my requested changes from blocking this. Code looks good to me, nice job! I don't have the ability to locally confirm edges are being properly created so if you have time and can verify that with good example data, then I say ship it! 🚀

@irshadaj irshadaj added the work in progress This pull request is a work in progress and should not be merged label Sep 11, 2024
@brandonshearin brandonshearin merged commit 46a7ccc into main Sep 12, 2024
4 checks passed
@brandonshearin brandonshearin deleted the BED-4611 branch September 12, 2024 20:05
@github-actions github-actions bot locked and limited conversation to collaborators Sep 12, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
work in progress This pull request is a work in progress and should not be merged
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants